package com.wicket.okrbff.biz.service.dto.common;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
import java.util.ArrayList;
import javax.validation.constraints.NotNull;
import lombok.Data;
import com.wicket.okrbff.common.annotations.TreeType;
import java.util.Objects;
    
    
    /**
     * @desc BffMidBasicCheckTargetDutyDto
     * @使用场景
     */
    @Data
    public class BffMidBasicCheckTargetDutyDto  implements Serializable {
      
    /**
     * 指标ID 
     */
    @TreeType("id")
@ApiModelProperty("指标ID")
    private String	 objectiveId;

    /**
     * 组织内部门身份名称 
     */
    @ApiModelProperty("组织内部门身份名称")
    private String	 virtualOrgDeptStatus;

    /**
     * 虚拟组织下部门ID 
     */
    @ApiModelProperty("虚拟组织下部门ID")
    private String	 deptId;

    /**
     * 部门简称 
     */
    @ApiModelProperty("部门简称")
    private String	 deptShortName;

    /**
     * 组内职务名称 
     */
    @ApiModelProperty("组内职务名称")
    private String	 virtualOrganizationPosition;

    /**
     * 虚拟组织成员就职记录ID 
     */
    @ApiModelProperty("虚拟组织成员就职记录ID")
    private String	 virtualOrgInductionRecordId;

    /**
     * 个人账号 
     */
    @ApiModelProperty("个人账号")
    private String	 userId;

    /**
     * 真实头像 
     */
    @ApiModelProperty("真实头像")
    private String	 userFace;

    /**
     * 真实姓名 
     */
    @ApiModelProperty("真实姓名")
    private String	 idCardName;

    /**
     * 用户昵称 
     */
    @ApiModelProperty("用户昵称")
    private String	 nickName;
/**
     * 冗余指标业务类型 NUMBER_GROWTH:数量增长型 NUMBER_DECLINE:数量降幅型 PERCENTAGE_GROWTH:百分比增长型 PERCENTAGE_DECLINE:百分比降幅型 PROGRESS:进度型 RATIO_GROWTH:比率增长型 RATIO_DECLINE:比率降幅型 SUBJECTIVE_QUALITATIVE:主观定性
     */
    @ApiModelProperty("冗余指标业务类型")
    private String	 targetValueType;
@Override
  public boolean equals(Object o) {
      if (this == o) return true;
      if (o == null || getClass() != o.getClass()) return false;
      if (!super.equals(o)) return false;
      BffMidBasicCheckTargetDutyDto that = (BffMidBasicCheckTargetDutyDto) o;
      return  objectiveId == that.objectiveId&&virtualOrgDeptStatus == that.virtualOrgDeptStatus&&deptId == that.deptId&&deptShortName == that.deptShortName&&virtualOrganizationPosition == that.virtualOrganizationPosition&&virtualOrgInductionRecordId == that.virtualOrgInductionRecordId&&userId == that.userId&&userFace == that.userFace&&idCardName == that.idCardName&&nickName == that.nickName&&targetValueType == that.targetValueType;
    }
@Override
  public int hashCode() {
      return Objects.hash(super.hashCode(), objectiveId,virtualOrgDeptStatus,deptId,deptShortName,virtualOrganizationPosition,virtualOrgInductionRecordId,userId,userFace,idCardName,nickName,targetValueType);
    }
    
      

    }
   